安裝 Sendmail

在Internet的世界裡,最常用的MTA應該算是sendmail這套軟體,然而,sendmail也算是以難搞出名的軟體。其安裝與設定之繁複,向來有「天書」之稱。

雖然在Sun Solaris的套件之中,已經內建有Sun 版的sendmail 在裡面,但是,Sun的sendmail 向來也算是惡名昭彰:只要是跟sendmail有關的安全性問題,Sun 官方版本的sendmail大概都跑不掉。於是,裝好Sun Solaris之後,很多老手的習慣不是想辦把去把sendmail跑起來,而是直接去抓最新版的sendmail回來自己重裝過.。這樣一來不但省事,而且也比較不會有安全上的顧慮。

在這裡,我們不再花時間告訴您怎麼去搞定在Solaris裡的Sun 版 sendmail 8.12.x,我們會要求您自己去抓sendmail的tar ball回來重新安裝過。

Sendmail的官方網站在http://www.sendmail.org/,關於sendmail的任何消息或是版本更新的問題,您都可以在上面找到相關訊息,而關於安裝上的任何問題,基本上都可以在上面找到你想要的答案。

在DA的部分,一般系統在安裝好後就已經有DA的功能。但系統的DA在被sendmail 呼叫時,因為是已root的身份來更新使用者的mail spool,因此並不會受quota等限制,而導致難以管理使用者信箱大小。所以,如果有其他需求時,可能就要自行安裝其它的DA。最常見的DA應當屬 procmail。 在現今MS Windows工作站氾濫的情況下,大部份的使用者還是習慣使用Outlook、Eudora或是Netscape Mail來收發email。這時候,在我們的Mail System裡面,就必須安裝POP3或是IMAP Server,才可以提供一般使用者收取email。

1 安裝Procmail 因為在後續安裝sendmail 的過程中,如果您要使用 Procmail來當你的DA,您必須先先行安裝,不然,可能在您啟動sendmail的過程中會出現找不到DA的錯誤訊息. 您可以到procmail的官方網站http://www.procmail.org/或鄰近的FTP Site去下載最新procmail,解開後直接編譯即可:

gzip –dc procmail-3.22.tar.gz | tar xvf – cd procmail-3.22 make su # make install-suid

2 安裝Sendmail 您可以到sendmail的網站,ftp://ftp.sendmail.org或是就近的FTP站(例如ftp://ftp.nsysu.edu.tw)下載最新版的sendmail回來。以sendmail 8.12.11為例,下載tar ball回來後,您可以直接解開就來安裝。不過,基本上還是建議您先安裝其他軟體,讓sendmail在安裝時更順暢。

2-1 安裝 Berkeley DB Berkeley DB是一屬於open source的內崁入式資料庫。它具有可程式化的工具,可以在單獨或主從架構中,內建高效能之資料庫支援。sendmail的相關檔案支援此種資料庫格式。您可以先安裝好這個資料庫,在Build sendmail時會自動偵測是不是有支援該資料庫格式,如果sendmail的安裝程式發現系統中有Berkeley DB的存在,就會自動支援採用。

您可以到到sleepy cat (http://www.sleepycat.com)或是其它FTP站去下載最新版的Berkeley DB後,解開tar ball就可直接Configure後編譯及安裝:

gzip -dc db-4.2.52.NC.tar.gz | tar xvf – cd db-4.2.52.NC/build_unix/ ../dist/configure –preifx=/usr make su # make install

2-2 安裝sendmail 裝好Berkeley DB後,可以開始安裝sendmail.。sendmail的Build程式就會自動支援並採用NEWDB的功能。

基於安全理由,sendmail從8.12.x後除了使用root去打開port 25之外,改用smmsp這個user/group 去執行sendmail。在Solaris 8,如果您要使用8.12.x的sendmail,您需要新增 smmsp 這個user 及 group。如果您使用的是Solaris 9,則可以省去這個步驟。

su # groupadd -g 25 smmsp #useradd -u 25 -g 25 -d / -c Sendmail smmsp

解開sendmail的tar ball後,直接使用它的Build scripts來進行編譯及安裝動作:

gzip –dc sendmail.8.12.11.tar.gz | tar xvf – cd sendmail-8.12.11 […]